#pragma once

#include "setdpi.h"
#include "GdiplusHelper.h"

#define DLG_MAIN_CAPTION_H					20
#define DLG_MAIN_CAPTION_TITLE_H			18
#define DLG_MAIN_CAPTION_TITLE_W			200
#define DLG_MAIN_CAPTION_BTN_H				15	// for close & minimize
#define DLG_MAIN_CAPTION_BTN_W				36	// for close & minimize
#define DLG_MAIN_MENU_BTN_H					32
#define DLG_MARGIN							4
// Child dialog
#define DLG_CHILD_BGAP_T					DLG_MARGIN + DLG_MAIN_CAPTION_H + DLG_MAIN_MENU_BTN_H
#define DLG_CHILD_BGAP_L					DLG_MARGIN + 2
#define DLG_CHILD_BGAP_R					DLG_MARGIN + 3
#define DLG_CHILD_BGAP_B					DLG_MARGIN + 2


// CDialogExt dialog
class CDialogExt : public CDialog
{
	DECLARE_DYNAMIC(CDialogExt)

public:
	CDialogExt(UINT nIDTemplate, CWnd* pParent = NULL); // standard constructor
	virtual ~CDialogExt();

	CDC* GetDialogCdc() { return &m_dcBackground; }

protected:
	int m_nBKResourceID;
	CDC m_dcBackground;

protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support

protected:
	CSetDPI dpi;
	UINT m_rcIDD;
public:
	virtual BOOL OnInitDialog();
	DECLARE_MESSAGE_MAP()
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
};